﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Webmedia.Wedding.Entities.Object.People;
using Webmedia.Wedding.Entities.Object.Restaurent;

namespace Webmedia.Wedding.Entities.Object.ThucDon
{
   public class ThucDon
    {
       [Key]
       public int ID { get; set; }
       [Display(Name = "Tên thực đơn")]
       public string TenThucDon { get; set; }
       [Display(Name = "Mô tả ngắn")]
       public string MoTaRutGon { get; set; }
       [Display(Name = "Mô tả chi tiêt")]
       public string MoTaChiTiet { get; set; }
       //
       [Display(Name = "Hạng thực đơn")]
       public Nullable<int> HangThucDonID { get; set; }
       [ForeignKey("HangThucDonID")]
       public virtual HangThucDon HangThucDon { get; set; }  
       //
       public bool laThucDonTuChon { get; set; }// thực đơn khách hàng tự chọn. mặc định là setmenu

       [Display(Name = "Khách tự chọn")]
       public Nullable<int> KhachTuChonID { get; set; }
       [ForeignKey("KhachTuChonID")]
       public virtual NguoiDung KhachTuChon { get; set; }
       //
      //
       [Display(Name = "Ngày Tạo")]
       public DateTime NgayTao { get; set; }
       //
       [Display(Name = "Người tạo")]
       public Nullable<int> NguoiTaoID { get; set; }
       [ForeignKey("NguoiTaoID")]
       public virtual NguoiDung NguoiTao { get; set; }
       //
       [Display(Name = "Ngày cập nhật")]
       public Nullable<DateTime> NgayUpdate { get; set; }
       //
       [Display(Name = "Người cập nhật")]
      public Nullable<int> NguoiUpdateID { get; set; }
       [ForeignKey("NguoiUpdateID")]
       public virtual NguoiDung NguoiCapNhat { get; set; }

       public bool Deleted { get; set; }
       [Display(Name = "Áp dụng")]
       public bool Enable { get; set; }
       //
       [Display(Name = "Nhà hàng")]
       public Nullable<int> NhaHangID { get; set; }
       [ForeignKey("NhaHangID")]
       public virtual NhaHang NhaHang { get; set; }
       // tổng giá bán
       [Display(Name = "Giá thực đơn")]
       public double Gia { get; set; }
       [Display(Name = "Chi phí thực đơn")]
       public double ChiPhiThucDon { get; set; }
  
        [Display(Name = "Tính phí phát sinh theo phần trăm")]
       public bool PhiPhatSinhTheoPhanTram { get; set; }
        [Display(Name = "Phần trăm %")]
        public double PhanTram { get; set; }
        [Display(Name = "Phí phát sinh")]
        public double PhiPhatSinh { get; set; }
       //
       
       //
       [InverseProperty("ThucDon")]
       public virtual ICollection<ThucDon_MonAn> ThucDon_MonAns { get; set; }

       [InverseProperty("ThucDon")]
       public virtual ICollection<HopDong.HopDong_ThucDon> HopDong_ThucDons { get; set; }
  
    }
}
